package com.bst.bsj.biz;

import com.homewaimai.common.lang.Result;

public interface SmsApi {

    /**
     * 发送短信消息
     * 
     * @param accountSid
     * @param authToken
     * @param subAccountSid
     * @param appId
     * @param to
     * @param body
     * @param msgType
     * @return
     * @throws Exception
     */
    public abstract Result sendSms(String appId, String to, String body, String msgType) throws Exception;

    /**
     * 发送短信消息（使用模版）
     * 
     * @param accountSid
     * @param authToken
     * @param templateId
     * @param appId
     * @param to
     * @param code
     * @return
     * @throws Exception
     */
    public abstract Result sendSmsWithTemplate(String templateId, String appId, String to, String code)
                                                                                                       throws Exception;

    /**
     * @param accountSid
     * @param authToken
     * @param templateId
     * @param appId
     * @param to
     * @param strs
     * @return
     * @throws Exception
     */
    public abstract Result sendSmsWithTemplate(String templateId, String appId, String to, String... strs)
                                                                                                          throws Exception;

    /**
     * 发送语音验证码
     * 
     * @param accountSid
     * @param token
     * @param appId
     * @param verifyCode
     * @param to
     * @return
     * @throws Exception
     */
    public abstract Result sendVoiceVerify(String appId, String verifyCode, String to) throws Exception;

    public Result sendSmsWithTemplate(String to, String code) throws Exception;
    
    
    public Result sendSms(String to, String code);
    
    public Result sendSms(String to, Integer templateId, String name, String telphone);
}
